package com.mytrip.service;

import java.util.List;

import com.mytrip.base.service.BaseManager;
import com.mytrip.model.City;
import com.mytrip.model.Trip;
import com.mytrip.model.TripNotifyUser;
import com.mytrip.model.TripPlan;

public interface TripManager extends BaseManager{

	public List<City> queryAllCity();

	public Integer addTrip(Trip trip);

	public void saveTripNotifyUser(TripNotifyUser tripNotifyUser);

	public List<Trip> queryNextTrip(int from, int size);

	public List<Trip> queryHistoryTrip(int from, int size);

	public List<Trip> queryDraftTrip(int from, int size);

	public Trip queryTripById(int id);

	public void editTrip(Trip trip);

	public void clearTripNotifyUserByTripId(Integer id);

	public City queryCityById(Integer id);

	public int queryNextTripCnt();

	public int queryHistoryTripCnt();

	public int queryDraftTripCnt();

	public List<Trip> queryAllFinishedTrip();

	public void deleteTrip(Trip trip);

	public List<TripPlan> queryTripPlanByTrip(Integer tripId);

	public void finishTrip(Trip trip);

	public List<TripNotifyUser> queryNotifyUserByTrip(Integer tripId);

	public Integer addPlan(TripPlan plan);

	public List<City> queryTripCitys();

	public TripPlan queryPlanById(Integer pid);

	public void deletePlan(TripPlan plan);

	public String queryCityWeather(Integer cityId);

	public void notifyPlan(TripPlan plan, Boolean ckd);

}
